﻿//using System.Collections.Generic;
//using System.Linq;
//using LogManager.Base;
//using LogManager.Base.Data;
//using Raven.Client.Document;

//namespace LogManager.Storage.Data
//{
//    class StorageLogRepository : LogRepository
//    {
//        private readonly DocumentStore _store;

//        public StorageLogRepository()
//        {
//            _store = new DocumentStore{Url = "localhost:9000"};
//        }

//        protected override IQueryable<ILog> Context
//        {
//            get 
//            { 
//                _store.Initialize();
//                using (var session = _store.OpenSession())
//                {
//                    return session.Load<ILog>().AsQueryable();
//                }
//            }
//        }

//        public override IEnumerable<ILog> All()
//        {
//            _store.Initialize();
//            using (var session = _store.OpenSession())
//            {
//                return session.Load<ILog>();
//            }
//        }

//        public override ILog Get(string logName)
//        {
//            _store.Initialize();
//            using (var session = _store.OpenSession())
//            {
//                return session.Query<ILog, AllLogs>().Where(l => l.Id == logName).SingleOrDefault();
//            }
//        }

//        public override IEnumerable<ILog> Server(string serverName)
//        {
//            _store.Initialize();
//            using (var session = _store.OpenSession())
//            {
//                return session.Query<ILog, AllLogs>().Where(l => l.Server.ServerName == serverName);
//            }
//        }
//    }
//}
